/* USER CODE BEGIN Header */
/**
  ******************************************************************************
  * @file           : main.h
  * @brief          : Header for main.c file.
  *                   This file contains the common defines of the application.
  ******************************************************************************
  * @attention
  *
  * <h2><center>&copy; Copyright (c) 2022 STMicroelectronics.
  * All rights reserved.</center></h2>
  *
  * This software component is licensed by ST under BSD 3-Clause license,
  * the "License"; You may not use this file except in compliance with the
  * License. You may obtain a copy of the License at:
  *                        opensource.org/licenses/BSD-3-Clause
  *
  ******************************************************************************
  */
/* USER CODE END Header */

/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __MAIN_H
#define __MAIN_H

#ifdef __cplusplus
extern "C" {
#endif

/* Includes ------------------------------------------------------------------*/
#include "stm32f4xx_hal.h"
#include "stm32f4xx_hal.h"

/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */

/* USER CODE END Includes */

/* Exported types ------------------------------------------------------------*/
/* USER CODE BEGIN ET */

/* USER CODE END ET */

/* Exported constants --------------------------------------------------------*/
/* USER CODE BEGIN EC */

/* USER CODE END EC */

/* Exported macro ------------------------------------------------------------*/
/* USER CODE BEGIN EM */

/* USER CODE END EM */

/* Exported functions prototypes ---------------------------------------------*/
void Error_Handler(void);

/* USER CODE BEGIN EFP */

	//王璠2022-01-04
void USER_UART_IRQHandler(void);//用户自定义的USART中断接收服务函数声明

/* USER CODE END EFP */

/* Private defines -----------------------------------------------------------*/

#define key_Pin GPIO_PIN_13
#define key_GPIO_Port GPIOC
#define CCD_CLK_Pin GPIO_PIN_0
#define CCD_CLK_GPIO_Port GPIOC
#define CCD_SI_Pin GPIO_PIN_1
#define CCD_SI_GPIO_Port GPIOC
#define redled_pa15_Pin GPIO_PIN_15
#define redled_pa15_GPIO_Port GPIOA
/* USER CODE BEGIN Private defines */
#define SYSTEM_HCLK        168000000    //总线频率
#define SYSTEM_OSC_CLOCK        8000000    //晶振频率
#define SYSTEM_APB1_TIMER_CLK      84000000	//time work_clk
#define SYSTEM_BAUD                 115200    //Uart波特率


#define SET_CCD_LIN_SI 				HAL_GPIO_WritePin(GPIOC, CCD_SI_Pin, GPIO_PIN_SET);	//CCD_LIN_SI = 1;
#define RESET_CCD_LIN_SI 			HAL_GPIO_WritePin(GPIOC, CCD_SI_Pin, GPIO_PIN_RESET);	//CCD_LIN_SI = 0;
#define SET_CCD_LIN_CK 				HAL_GPIO_WritePin(GPIOC, CCD_CLK_Pin, GPIO_PIN_SET);//CCD_LIN_CK = 1;
#define RESET_CCD_LIN_CK 			HAL_GPIO_WritePin(GPIOC, CCD_CLK_Pin, GPIO_PIN_RESET);//CCD_LIN_CK = 0;    

#define  DIP_1 HAL_GPIO_ReadPin(GPIOE, GPIO_PIN_8)
#define  DIP_2 HAL_GPIO_ReadPin(GPIOE, GPIO_PIN_9)
#define  DIP_3 HAL_GPIO_ReadPin(GPIOE, GPIO_PIN_10)
#define  DIP_4 HAL_GPIO_ReadPin(GPIOE, GPIO_PIN_11)

#define  K1 HAL_GPIO_ReadPin(GPIOE, GPIO_PIN_12)
#define  K2 HAL_GPIO_ReadPin(GPIOE, GPIO_PIN_13)
#define  K3 HAL_GPIO_ReadPin(GPIOE, GPIO_PIN_14)
#define  K4 HAL_GPIO_ReadPin(GPIOE, GPIO_PIN_15)
/* USER CODE END Private defines */

#ifdef __cplusplus
}
#endif

#endif /* __MAIN_H */

/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
